// Author: MAMUN MIAH
// Date:23 February 2023
// Link:
#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define ll long long
#define pb push_back
void solve()
{
int n;
cin >> n;
string pin;
vector<int> check(10, 0);
vector<string> keep;
int ans = 0, dup = n;
while (n--)
{
cin >> pin;
check[pin[0] - '0'] = 1;
keep.pb(pin);
}
for(int i = 0; i < dup; i++)
{
for(int j = i + 1; j < dup; j++)
{
if(keep[i] == keep[j])
{
ans++;
for(int k = 0; k <= 9; k++)
{
if(!check[k])
{
keep[i][0] = '0' + k;
check[k] = 1;
break;
}
}
break;
}
}
}
cout << ans << endl;
for (auto x : keep)
{
cout << x << endl;
}
}
int main()
{
ios_base ::sync_with_stdio(false);
cin.tie(nullptr);
int test;
test = 1;
if (true)
{
cin >> test;
}
while (test--)
{
solve();
}
}
221. Maximal Square | 1200. Minimum Absolute Difference |
1619B - Squares and Cubes | 1619A - Square String |
1629B - GCD Arrays | 1629A - Download More RAM |
1629C - Meximum Array | 1629D - Peculiar Movie Preferences |
1629E - Grid Xor | 1629F1 - Game on Sum (Easy Version) |
2148. Count Elements With Strictly Smaller and Greater Elements | 2149. Rearrange Array Elements by Sign |
2150. Find All Lonely Numbers in the Array | 2151. Maximum Good People Based on Statements |
2144. Minimum Cost of Buying Candies With Discount | Non empty subsets |
1630A - And Matching | 1630B - Range and Partition |
1630C - Paint the Middle | 1630D - Flipping Range |
1328A - Divisibility Problem | 339A - Helpful Maths |
4A - Watermelon | 476A - Dreamoon and Stairs |
1409A - Yet Another Two Integers Problem | 977A - Wrong Subtraction |
263A - Beautiful Matrix | 180C - Letter |
151A - Soft Drinking | 1352A - Sum of Round Numbers |